Method And Apparatus For Security Mechanism For Proximity-Based Access Requests

ABSTRACT

An approach is provided for providing security mechanism for proximity-based interactions among devices. A first device (e.g., a memory tag) may determine a request for interaction between the first device and a second device (e.g., a mobile phone), wherein at least the first device is associated with at least one first antenna and at least one second antenna. The first device may determine a first signal received by the at least one first antenna and a second signal received by the at least one second antenna. Further, the first device may determine one or more differences in one or more characteristics of the first signal and the second signal. Furthermore, the first device may process or facilitate a processing of the one or more differences to determine whether to allow the interaction.

CROSS REFERENCE TO RELATED APPLICATION

This application is a continuation of and claims priority to U.S.application Ser. No. 13/720,202, filed Dec. 19, 2012, and entitled,“Method and Apparatus for Security Mechanism for Proximity-Based AccessRequests,” the entire contents of which are hereby incorporated byreference.

BACKGROUND

Service providers (e.g., wireless, cellular, etc.) and devicemanufacturers are continually challenged to deliver value andconvenience to consumers by, for example, providing compelling networkservices. One area of interest is providing the capability ofproximity-based wireless communication among user devices where usersmay utilize various devices (e.g., mobile phones, smart cards, memorytags, etc.) to communicate with other nearby devices for a range oftasks and/or services, for example, to share content and information,pay for purchased services and content, and the like. In variousscenarios, users may use a device to interface with vending machines,kiosks, smart posters, billboards, etc., where various user informationmay be transferred via the communication link (e.g., near fieldcommunication (NFC)). However, in many instances sensitive userinformation such as credit card numbers, passwords, user identificationinformation, etc. may be transferred between the devices whereby thesensitive information may be requested by and/or unintentionallytransferred to unauthorized devices.

SOME EXAMPLE EMBODIMENTS

Therefore, there is a need for an approach for security mechanism forproximity-based interactions among devices.

According to one embodiment, a method comprises determining a requestfor interaction between at least one first device and at least onesecond device, wherein at least the at least one first device isassociated with at least one first antenna and at least one secondantenna. The method also comprises determining a first signal receivedby the at least one first antenna and a second signal received by the atleast one second antenna. Further, the method also comprises determiningone or more differences in one or more characteristics of the firstsignal and the second signal. Additionally, the method also comprisesprocessing and/or facilitating a processing of the one or moredifferences to determine whether to allow the interaction.

According to another embodiment, an apparatus comprises at least oneprocessor, and at least one memory including computer program code forone or more computer programs, the at least one memory and the computerprogram code configured to, with the at least one processor, cause, atleast in part, the apparatus to determine a request for interactionbetween at least one first device and at least one second device,wherein at least the at least one first device is associated with atleast one first antenna and at least one second antenna. The apparatusis further caused to determine a first signal received by the at leastone first antenna and a second signal received by the at least onesecond antenna. Further, the apparatus is also caused to determine oneor more differences in one or more characteristics of the first signaland the second signal. Additionally, the apparatus is also caused toprocess and/or facilitate a processing of the one or more differences todetermine whether to allow the interaction.

According to another embodiment, a computer-readable storage mediumcarrying one or more sequences of one or more instructions which, whenexecuted by one or more processors, cause, at least in part, anapparatus to determine a request for interaction between at least onefirst device and at least one second device, wherein at least the atleast one first device is associated with at least one first antenna andat least one second antenna. The apparatus is further caused todetermine a first signal received by the at least one first antenna anda second signal received by the at least one second antenna. Further,the apparatus is also caused to determine one or more differences in oneor more characteristics of the first signal and the second signal.Additionally, the apparatus is also caused to process and/or facilitatea processing of the one or more differences to determine whether toallow the interaction.

According to another embodiment, an apparatus comprises means fordetermining a request for interaction between at least one first deviceand at least one second device, wherein at least the at least one firstdevice is associated with at least one first antenna and at least onesecond antenna. The apparatus further comprises means for determining afirst signal tag received by the at least one first antenna and a secondsignal tag received by the at least one second antenna. Further, theapparatus also comprises means for determining one or more differencesin one or more characteristics of the first signal and the secondsignal. Additionally, the apparatus also comprises means for processingand/or facilitating a processing of the one or more differences todetermine whether to allow the interaction.

In addition, for various example embodiments of the invention, thefollowing is applicable: a method comprising facilitating a processingof and/or processing (1) data and/or (2) information and/or (3) at leastone signal, the (1) data and/or (2) information and/or (3) at least onesignal based, at least in part, on (including derived at least in partfrom) any one or any combination of methods (or processes) disclosed inthis application as relevant to any embodiment of the invention.

For various example embodiments of the invention, the following is alsoapplicable: a method comprising facilitating access to at least oneinterface configured to allow access to at least one service, the atleast one service configured to perform any one or any combination ofnetwork or service provider methods (or processes) disclosed in thisapplication.

For various example embodiments of the invention, the following is alsoapplicable: a method comprising facilitating creating and/orfacilitating modifying (1) at least one device user interface elementand/or (2) at least one device user interface functionality, the (1) atleast one device user interface element and/or (2) at least one deviceuser interface functionality based, at least in part, on data and/orinformation resulting from one or any combination of methods orprocesses disclosed in this application as relevant to any embodiment ofthe invention, and/or at least one signal resulting from one or anycombination of methods (or processes) disclosed in this application asrelevant to any embodiment of the invention.

For various example embodiments of the invention, the following is alsoapplicable: a method comprising creating and/or modifying (1) at leastone device user interface element and/or (2) at least one device userinterface functionality, the (1) at least one device user interfaceelement and/or (2) at least one device user interface functionalitybased at least in part on data and/or information resulting from one orany combination of methods (or processes) disclosed in this applicationas relevant to any embodiment of the invention, and/or at least onesignal resulting from one or any combination of methods (or processes)disclosed in this application as relevant to any embodiment of theinvention.

In various example embodiments, the methods (or processes) can beaccomplished on the service provider side or on the mobile device sideor in any shared way between service provider and mobile device withactions being performed on both sides.

For various example embodiments, the following is applicable: Anapparatus comprising means for performing the method of any oforiginally filed claims.

Still other aspects, features, and advantages of the invention arereadily apparent from the following detailed description, simply byillustrating a number of particular embodiments and implementations,including the best mode contemplated for carrying out the invention. Theinvention is also capable of other and different embodiments, and itsseveral details can be modified in various obvious respects, all withoutdeparting from the spirit and scope of the invention. Accordingly, thedrawings and description are to be regarded as illustrative in nature,and not as restrictive.

BRIEF DESCRIPTION OF THE DRAWINGS

The embodiments of the invention are illustrated by way of example, andnot by way of limitation, in the figures of the accompanying drawings:

FIG. 1 is a diagram of a system capable of providing security mechanismfor proximity-based interactions among devices, according to anembodiment;

FIG. 2 is a diagram of the components of a PC module, according to anembodiment;

FIGS. 3A-3C illustrate various diagrams and schematics of processes anddevice interactions in the system 100, according to various embodiments;

FIG. 4 is a flowchart of a process for, at least, determining a requestfor interaction among devices, according to an embodiment;

FIG. 5 is a flowchart of a process for, at least, comparing one or moredifferences to one or more threshold values, according to variousembodiments;

FIGS. 6A and 6B are example UI diagrams utilized in the processes ofFIGS. 4 and 5, according to various embodiments;

FIG. 7 illustrates a computer system 700 upon which an embodiment of theinvention may be implemented;

FIG. 8 illustrates a chip set or chip 800 upon which an embodiment ofthe invention may be implemented; and

FIG. 9 is a diagram of a mobile terminal (e.g., handset) that can beused to implement an embodiment of the invention.

DESCRIPTION OF SOME EMBODIMENTS

Examples of a method, apparatus, and computer program for providingsecurity mechanism for proximity-based interactions between devices aredisclosed. In the following description, for the purposes ofexplanation, numerous specific details are set forth in order to providea thorough understanding of the embodiments of the invention. It isapparent, however, to one skilled in the art that the embodiments of theinvention may be practiced without these specific details or with anequivalent arrangement. In other instances, well-known structures anddevices are shown in block diagram form in order to avoid unnecessarilyobscuring the embodiments of the invention.

As used herein, the term “request for interaction” refers to one or morerequests from one or more devices to interact with each other. By way ofexample, the request and/or the interaction may be facilitated by use ofone or more proximity-based communication methods. Further, theinteraction among the devices may include requesting for access,granting access, reading, writing, modifying, accessing, enquiring, andthe like actions, wherein the actions may be performed by one or moredevices which may have access to one or more data items. Furthermore, a“memory tag” may refer to a wireless memory tag, an RFID memory tag, andthe like, which may be embedded into a device (e.g., a mobile device) ormay be a stand-alone device (e.g., as a memory card/tag.)

FIG. 1 is a diagram of a system capable of providing security mechanismfor proximity-based interactions among devices, according to anembodiment. Generally, devices in close proximity may request for and/orutilize proximity-based communication links (e.g., short range radiolinks), for example by use of radio frequency identification (RFID), fortransferring of user, device, and/or service provider information fromone device to one or more other devices, wherein the information may begeneric or specific to the user, the device, and/or to a serviceprovider. For example, the transferred information may be advertisementfrom vendors and service providers to a plurality of devices/consumerslocated near one or more point of service (POS) platforms such askiosks, wireless memory tags (e.g., RFID tags), billboards, productpackaging, and the like. In other instances, users may intend totransfer specific information (e.g., credit card information) fromand/or to a specific device, wherein the information may besensitive/private and may not be intended for sharing with other (e.g.,unauthorized) devices. In another instance, the POS platforms may havethe capability of providing various digitally supported services suchas, for example, selling goods and accepting fund transfer from onlineaccounts via mobile devices, or providing other services (e.g., tickets,reservations, etc.) Additionally, a user may utilize an NFC enableddevice (e.g., a mobile phone, a tablet, etc.) to extract data from anNFC memory tag by touching the tag with the device (e.g., very close,within an inch, touch-distance-radio, etc.), wherein the data mayinclude a free ring-tone, a URL, or even the configuration for a localWi-Fi hotspot, wherein the memory tag may be a passive device (e.g., amemory tag without its own power source) or may be associated with anactive device (e.g., with its own power source and processor.) Moreover,the wireless memory tags may be capable of high data rate transfers aswell as include high storage capacities.

As implementation of such communication and sharing methods become moreprevalent, users are becoming more willing utilize the methods to sharea wide range of information, which include personal data, with otherusers and devices; however, other opportunistic users and devices mayattempt unauthorized access to the user devices and data therein (e.g.,reading and/or writing.) For example, a first user may utilize a device(e.g., a first mobile phone, a bank card, etc.) for establishing awireless communication link for sending and/or receiving certaininformation to/from another nearby target device; however, anunauthorized user may utilize another device (e.g., another mobilephone), for example at a remote distance, to request and gain afraudulent access to the device and information of the first user whilepretending to be the intended nearby target device. Further, anunauthorized device at a nearby location may be programmed to attemptand take control of (e.g., hijack) a communication link between twoother devices which may not be aware of the presence of the unauthorizeddevice.

To address, at least these problems, a system 100 of FIG. 1 introducesthe capability of proving security mechanism for proximity-basedinteractions among devices. More specifically, a first device; forexample, a mobile phone, a smart card, a tablet, a memory card, apassive device, an active device, and the like, may determine if acommunication link between the first device and a nearby target deviceis in fact a communication link between only the first device and theintended target device. For example, a user is using a first device tocommunicate with a target device, wherein the first device and thetarget device may allow interaction between the devices for reading,transferring, sending, and/or writing data from and to the otherrespective device. In another instance, the first device may utilize thecommunication link to determine a location of a target device. In oneembodiment, the first device may identify its location and notify thetarget device when allowing an interaction between the first and thetarget devices. In various instances, a first device and/or a targetdevice may include power, storage, and computational resources or may bea passive device which may include resources (e.g., circuitry) forstoring data and responding to other devices, wherein a passive devicemay receive power and/or data signals from an active device.

Although users and user devices may employ a range of securitymechanisms (e.g., user ID, device ID, paring, acceptance, etc.) whenestablishing communication links for sharing data between variousdevices, in certain scenarios, users may wish to quickly establish thecommunication link with minimal setup requirements, for example, withoutthe use of all traditional security mechanisms. However, when a useridentifies a target device that is in close proximity (e.g., withininches), which is a device the user would like to establish acommunication link with, the user may utilize the mechanisms of thesystem 100 to achieve a desired security level. In various embodiments,one or more characteristics (e.g., phase, amplitude, power, time, etc.)of one or more communication signals (signals) may be analyzed todetermine an authorized communication link and access rights. In oneembodiment, the system 100 may process a plurality of signals todetermine differences between corresponding phase, power, amplitude, andthe like signals and further determine location and/or direction of oneor more potential signal sources (e.g., devices.) In one scenario, twoNFC enabled devices (e.g., a mobile device and a memory card) or anyother wirelessly powered/enabled devices may establish a communicationlink when the two devices are brought substantially close to each other,wherein the two devices may include a plurality of antennas fortransmitting and receiving the signals, for example, data signals, powersignals, reference signals, and the like. Further, a receiving devicemay receive a plurality of transmission signals via a plurality ofantennas, wherein the receiving device may process, analyze, deduce,etc. differences in characteristics of the plurality of the transmissionsignals so to determine if the transmitting device is substantiallyclose to the receiving device.

In one embodiment, the plurality of antennas may be situated atdifferent physical locations on a device, wherein signals (e.g., from asame source) received at the plurality of antennas may have differentcharacteristics. In one embodiment, if there is little or no differencein characteristics of the received signals, then it may be determinedthat the source of the signals (e.g., a transmitting device) may be at afarther distance from the receiving device. In one embodiment, highernumber of antennas on a device may allow for analysis and determinationof additional information, in multiple spatial planes, for estimation ofmore accurate directional and/or location information of a deviceassociated with the transmitted signals. In one embodiment, one or moreprocesses for the comparison, analysis, determination, and the like maybe performed (e.g., at a receiving device) by utilizing one or moreprocessors, algorithms, applications, and the like. In one embodiment,the one or more processes may be performed, at least in part, by one ormore circuits (e.g., electronic passive, active, analog, digital, etc.)

In one embodiment, the system 100 determines a request for interactionbetween at least one first device and at least one second device,wherein at least the at least one first device is associated with atleast one first antenna and at least one second antenna. In oneembodiment, the at least one first device may be a wireless memory tagwhich may be embedded into a device, for example a mobile phone, whereinthe wireless memory tag and/or the device may include a plurality ofantennas for receiving/transmitting various RF signals. In oneembodiment, the at least one second device may be user device (e.g., amobile phone, an NFC reader, a network device (e.g., a computer, akiosk, etc.), an active device (e.g., including power, processor, etc.),a passive device (e.g., a memory card, a memory tag, etc.) In oneembodiment, the wireless memory tag may be embedded into a user item;for example a bank card, an ID card, a passport, a wallet, and the like,wherein the wireless memory tag include the plurality of antennas. Inone embodiment, the request for interaction may be a request for accessto read, write, modify, transfer, inquire, or a combination thereof. Inone embodiment, the interaction includes a communication via an NFCprotocol. In one embodiment, the at least one first device, the at leastone second device, or a combination thereof is and/or may be associatedwith a wireless memory tag, a passive device, an active device, or acombination thereof.

In one embodiment, the system 100 determines a first signal received bythe at least one first antenna and a second signal received by the atleast one second antenna. In one embodiment, a memory tag and/or adevice (e.g., a tablet) may receive a plurality of signals from one ormore other devices and/or memory tags. For example, a memory tag mayreceive a plurality of signals via a plurality of its antennas. In oneexample, a device (e.g., a mobile phone) may detect a plurality ofsignals associated with a proximity-based communication device (e.g., amemory tag, another device, etc.) In one embodiment, the first signaland the second signal include one or more data signals, one or morepower signals, one or more reference signals, or a combination thereof.

In one embodiment, the system 100 determines one or more differences inone or more characteristics of the first signal and the second signal.In one embodiment, a device may utilize one or more processors,algorithms, circuitries, components, digital and/or analog, and the liketo process the plurality of signals for determining one or morecharacteristics, one or more parameters, one or more properties, and thelike associated with the signals. In one embodiment, the one or morecharacteristics include, at least in part, one or more a signal phases,signal amplitudes, powers, S/N ratios, and the like. In one embodiment,a memory tag may utilize one or more circuitries including a pluralityof components (e.g., analog) to determine the characteristics. Invarious embodiments, the device and/or memory tag may determine one ormore differences in the one or more characteristics associated with eachsignal. For example, a first signal may have a different phase,amplitude, power, etc. when compared to the characteristics of a secondsignal, a third signal, etc.

In one embodiment, the system 100 processes and/or facilitates aprocessing of the one or more differences to determine whether to allowthe interaction. In one embodiment, a device and/or a memory tag mayallow an interaction requested by another device and/or memory tag. Forexample, a second device and/or memory tag may be requesting to access(e.g., read/write/modify) certain data at a first device and/or memorytag. For example, a memory tag may disable one or more components in oneor more circuitries to disallow an interaction. In one embodiment, adevice may utilize one or more processors and/or applications to denythe interaction.

In one embodiment, the system 100 causes, at least in part, one or morecomparisons of the one or more differences to one or more thresholdvalues. In one embodiment, the one or more determined differences may becompared to one or more threshold values to determine proximity (e.g.,location) of a source associated with one or more certain signals. Forexample, it may be determined that signals from a second device and/or asecond memory tag, which are assumed to be located at a certain distancefrom a first device and/or a first memory tag, should have certaincharacteristics associated with the signals. For example, two signalsreceived from a second device (e.g., a source device) located at a closedistance of two-to-three centimeters away from a first device (e.g., atarget device) should have a phase and/or an amplitude differencegreater than a certain threshold value, wherein if the differences areless than the certain threshold value, it may be indicative that thesource of the signals (e.g., the source device) is not necessarilylocated within that close distance. In one embodiment, location andsurroundings of the devices requesting interaction among the devices maybe suggest certain signal characteristics that should be present when afirst device and a target device interact. For example, if the firstdevice and the target device are in a large open space (e.g., a park)the signal characteristics of the interaction may differ from a settingwhere the devices are in a room.

In one embodiment, the system 100 causes, at least in part, adiscontinuation of the interaction based, at least in part, on the oneor more comparisons. In one embodiment, a device and/or a memory tag mayallow an interaction requested by another user device and/or memory tagand later the allowed interaction and/or a communication link may bedisabled if the one or more comparisons indicate one or more parameterand/or characteristic values outside a threshold value range. Forexample, a second device and/or memory tag may be accessing (e.g.,read/write) certain data at a first device and/or memory tag. In oneexample, a memory tag may disable one or more components in its one ormore circuitries to discontinue a communication link and disengage froman interaction.

In one embodiment, the system 100 causes, at least in part, apresentation of a UI comprising one or more indicators, one or moremessages, or a combination thereof for providing instructinginformation, status information, or a combination thereof on theinteraction. In one embodiment, a UI may present a warning that arequest for an interaction and/or a communication link is potentiallyfraudulent, or is suspicious, or is from a remote source device, and thelike. In one embodiment, a user of a target device may be prompted totake certain actions, for example, to move the target device so thatdifferent set of signals may be captured and new characteristics may bedetermined.

In one embodiment, the system 100 causes, at least in part, anestimation of a distance between the at least one first device and theat least one second device based, at least in part, on the one or moredifferences. In one embodiment, a device may utilize various processors,algorithms, circuitries, and the like to analyze one or more parametersof the one or more differences so that a distance between at least afirst device and a second device may be determined. For example,differences in amplitude, in power, in phase, etc. may be indicative ofthe distance.

In one embodiment, the system 100 determines whether to allow theinteraction based, at least in part, on the distance. For example, if asource device is supposed to be within three centimeters of a user'starget device and the estimated distance is calculated/determined to begreater than the supposed three centimeters, then a request from thesource device to interact with the user's target device may be denied.

In one embodiment, the system 100 causes, at least in part, apresentation of a user interface comprising one or more indicators, oneor more messages, or a combination thereof for providing directionalinformation for, at least, locating the at least one first device, theat least one second device, or a combination thereof. In one embodiment,a first device may utilize one or more other components; for example, agyroscope, an accelerometer, a compass, and the like, as well as thedetermined signal characteristics and/or differences associated withsignals from a second device, to further determine and presentdirectional information for locating/tracking the second device. Forexample, a user utilizes a first device to determine locationinformation of a second device and directional information to the otherdevice. In one embodiment, the at least one first device, the at leastone second device, or a combination thereof may utilize the one or moreindicators and/or the one or more messages for interacting with one ormore other devices to perform one or more tasks associated with one ormore gaming applications, one or more entertainment applications, one ormore educational applications, and the like. For example, one or moreusers may try to locate various objects including memory tags placedwithin certain proximity of a user's location. In one example, a usermay utilize the presented indicators for improving one or more users'abilities to follow directional information.

As shown in FIG. 1, in one embodiment, the system 100 includes userequipment (UE) 101 a-101 n (also collectively referred to as UE 101and/or UEs 101), which may be utilized to execute one or moreapplications 103 a-103 n (also collectively referred to as applications103) including social networking, web browser, multimedia applications,user interface (UI), map application, web client, etc. to communicatewith other UEs 101, one or more service providers 105 a-105 n (alsocollectively referred to as service providers 105), one or more contentproviders 107 a-107 n (also collectively referred to as contentproviders 107), one or more POS platforms 109 a-109 n (also collectivelyreferred to as POS platform 109), one or more GPS satellites 111 a-111 n(also collectively referred to as GPS satellites 111), and/or with othercomponents of the system 100 directly and/or via communication network113. In one embodiment, the UEs 101 may include data/content collectionmodules 115 a-115 n (also collectively referred to as DC collectionmodule 115) for determining and/or collecting data and/or contentassociated with the UEs 101, one or more users of the UEs 101,applications 103, one or more content items (e.g., multimedia content),and the like. In addition, the UEs 101 can execute an application 103that is a software client for storing, processing, and/or forwarding oneor more information items to other components of the system 100.

In one embodiment, the UEs 101 may include a proximity communication(PC) security module 116 a-116 n (also collectively referred to as PCmodule 116) for communicating with nearby devices (e.g., NFC devices forstoring and/or transmitting data) and/or memory tags. In one embodiment,a PC module 116 may include a memory tag 117 for storing and/orretrieving data from. In one embodiment, a memory tag 117 (e.g., 117 z)may also be embedded in and/or attached to a device other than a UE 101,for example, on a poster, at a kiosk, in a credit card, in anidentification card, in a memory stick, and the like. In variousembodiments, one or more elements of the PC security module mayimplemented on a memory tag 117 (e.g., 117 z) whether or not the memorytag is associated (e.g., included) in UE 101. For example, one or morecircuitries and/or components may be implemented onto a memory tag forproviding the PC security features of the system 100. In variousembodiments, the UE 101, the PC module 116, and/or the memory tag 117may include a plurality of antennas for receiving and/or transmittingone or more signals including data, power, reference, and the likesignals. In various embodiments, the UE 101 and/or the PC module 116 mayinclude one or more processors, antennas, circuitries, components,algorithms, software, applications, and the like for effectuatingcommunications with another PC enabled device (e.g., a UE 101, a memorytag 117, etc.) and/or for processing and analyzing the one or moresignals to determine one or more characteristics associated with thesignals. In one embodiment, the memory tag 117 may include one or moreantennas, circuitries, components, and the like for effectuatingcommunications with another PC enabled device (e.g., a UE 101, PCmodule, NFC reader, etc.) and/or for comparing and analyzing the one ormore signals to determine one or more characteristics associated withthe signals.

In one embodiment, the service providers 105 may include and/or haveaccess to one or more databases 118 a-118 n (also collectively referredto as database 118), which may include various user information, userprofiles, user preferences, one or more profiles of one or more userdevices (e.g., device configuration, sensors information, etc.), serviceproviders 105 information, other service providers' information, and thelike. In one embodiment, the service providers 105 may include variousservice providers offering a range of services, for example, onlineshopping, social networking services (e.g., blogging), media upload,media download, media streaming, account management services, or acombination thereof. Further, the service providers 105 may conduct asearch for content items, media items, information, coupons, and thelike associated with one or more users, POIs, geo-locations, and thelike.

In one embodiment, the content providers 107 may include and/or haveaccess to one or more database 119 a-119 n (also collectively referredto as database 119), which may store, include, and/or have access tovarious content items. For example, the content providers 107 may storecontent items (e.g., at the database 119) provided by various users,various service providers, crowd-sourced content, and the like.

In one embodiment, the POS platform 109 may include and/or have accessto a one or more database 121 a-121 n (also collectively referred to asdatabase 121) to access and/or store information associated with variousapplications, contents, users, service providers, and the like. It isnoted that the POS platform 109 may be a stand-alone entity in thesystem 100 (e.g., on a computer, on a server, etc.), a part of theservice providers 105, a part of the content providers 107, includedwithin the UE 101 (e.g., as part of the applications 103), or acombination thereof. Further, the POS platform 109, the serviceproviders 105, and/or the content providers 107 may utilize one or moreservice application programming interfaces (APIs)/integrated interface,through which communication, media, content, and information (e.g.,associated with users, applications, services, content, etc.) may beshared, accessed and/or processed.

The UEs 101 may be any type of mobile terminal, fixed terminal, orportable terminal including a mobile handset, NFC reader, station, unit,device, healthcare diagnostic and testing devices, product testingdevices, multimedia computer, multimedia tablet, Internet node,communicator, desktop computer, laptop computer, notebook computer,netbook computer, tablet computer, personal communication system (PCS)device, personal navigation device, personal digital assistants (PDAs),audio/video player, digital camera/camcorder, positioning device,television receiver, loud speakers, display monitors, radio broadcastreceiver, electronic book device, game device, wrist watch, or anycombination thereof, including the accessories and peripherals of thesedevices, or any combination thereof. It is also contemplated that theUEs can support any type of interface to the user (such as “wearable”circuitry, etc.) Further, the UEs 101 may include various sensors forcollecting data associated with a user, a user's environment, and/orwith a UE 101, for example, the sensors may determine and/or captureaudio, video, images, atmospheric conditions, device location, usermood, ambient lighting, user physiological information, device movementspeed and direction, and the like.

In one embodiment, the UE 101 includes a location module/sensor that candetermine the UE 101 location (e.g., a user's location). The UE 101location may be determined by a triangulation system such as a GPS,assisted GPS (A-GPS), Cell of Origin, wireless local area networktriangulation, or other location extrapolation technologies. StandardGPS and A-GPS systems can use the one or more satellites 111 to pinpointthe location (e.g., longitude, latitude, and altitude) of the UE 101. ACell of Origin system can be used to determine the cellular tower that acellular UE 101 is synchronized with. This information provides a coarselocation of the UE 101 because the cellular tower can have a uniquecellular identifier (cell-ID) that can be geographically mapped. Thelocation module/sensor may also utilize multiple technologies to detectthe location of the UE 101. GPS coordinates can provide finer detail asto the location of the UE 101. In another embodiment, the UE 101 mayutilize a local area network (e.g., LAN, WLAN) connection to determinethe UE 101 location information, for example, from an Internet source(e.g., a service provider).

By way of example, the communication network 113 of system 100 includesone or more networks such as a data network, a wireless network, atelephony network, or any combination thereof. It is contemplated thatthe data network may be any local area network (LAN), metropolitan areanetwork (MAN), wide area network (WAN), a public data network (e.g., theInternet), short range wireless network, or any other suitablepacket-switched network, such as a commercially owned, proprietarypacket-switched network, e.g., a proprietary cable or fiber-opticnetwork, and the like, or any combination thereof. In addition, thewireless network may be, for example, a cellular network and may employvarious technologies including enhanced data rates for global evolution(EDGE), general packet radio service (GPRS), global system for mobilecommunications (GSM), Internet protocol multimedia subsystem (IMS),universal mobile telecommunications system (UMTS), etc., as well as anyother suitable wireless medium, e.g., worldwide interoperability formicrowave access (WiMAX), Long Term Evolution (LTE) networks, codedivision multiple access (CDMA), wideband code division multiple access(WCDMA), wireless fidelity (WiFi), wireless LAN (WLAN), Bluetooth®,Internet Protocol (IP) data casting, satellite, mobile ad-hoc network(MANET), and the like, or any combination thereof.

By way of example, the UEs 101, the service providers 105, the contentproviders 107, and the POS platform 109 may communicate with each otherand other components of the communication network 113 using well known,new or still developing protocols. In this context, a protocol includesa set of rules defining how the network nodes within the communicationnetwork 113 interact with each other based on information sent over thecommunication links. The protocols are effective at different layers ofoperation within each node, from generating and receiving physicalsignals of various types, to selecting a link for transferring thosesignals, to the format of information indicated by those signals, toidentifying which software application executing on a computer systemsends or receives the information. The conceptually different layers ofprotocols for exchanging information over a network are described in theOpen Systems Interconnection (OSI) Reference Model.

Communications between the network nodes are typically effected byexchanging discrete packets of data. Each packet typically comprises (1)header information associated with a particular protocol, and (2)payload information that follows the header information and containsinformation that may be processed independently of that particularprotocol. In some protocols, the packet includes (3) trailer informationfollowing the payload and indicating the end of the payload information.The header includes information such as the source of the packet, itsdestination, the length of the payload, and other properties used by theprotocol. Often, the data in the payload for the particular protocolincludes a header and payload for a different protocol associated with adifferent, higher layer of the OSI Reference Model. The header for aparticular protocol typically indicates a type for the next protocolcontained in its payload. The higher layer protocol is said to beencapsulated in the lower layer protocol. The headers included in apacket traversing multiple heterogeneous networks, such as the Internet,typically include a physical (layer 1) header, a data-link (layer 2)header, an internetwork (layer 3) header and a transport (layer 4)header, and various application (layer 5, layer 6 and layer 7) headersas defined by the OSI Reference Model.

In one embodiment, the UEs 101 and the POS platform 109 may interactaccording to a client-server model. It is noted that the client-servermodel of computer process interaction is widely known and used.According to the client-server model, a client process sends a messageincluding a request to a server process, and the server process respondsby providing a service. The server process may also return a messagewith a response to the client process. Often the client process andserver process execute on different computer devices, called hosts, andcommunicate via a network using one or more protocols for networkcommunications. The term “server” is conventionally used to refer to theprocess that provides the service, or the host computer on which theprocess operates. Similarly, the term “client” is conventionally used torefer to the process that makes the request, or the host computer onwhich the process operates. As used herein, the terms “client” and“server” refer to the processes, rather than the host computers, unlessotherwise clear from the context. In addition, the process performed bya server can be broken up to run as multiple processes on multiple hosts(sometimes called tiers) for reasons that include reliability,scalability, and redundancy, among others. It is also noted that therole of a client and a server is not fixed; in some situations a devicemay act both as a client and a server, which may be done simultaneouslyand/or the device may alternate between these roles.

FIG. 2 is a diagram of the components of a PC module, according to anembodiment. By way of example, the PC module 116 includes one or morecomponents for receiving, processing, and analyzing one or morecommunication signals for determining one or more characteristics.Further, the one or more characteristics may be utilized, at in part, todetermine one or more security actions for one or more proximity basedcommunication among a plurality of devices. It is contemplated that thefunctions of these components may be combined in one or more componentsor performed by other components of equivalent functionality. In thisembodiment, the PC module 116 includes a control logic module 201, aprocessing module 203, a comparison module 205, a radio frequency (RF)module 207, a user interface (UI) module 209, and a memory tag 117.

The control logic module 201 oversees tasks, including tasks performedby control logic module 201, the processing module 203, the comparisonmodule 205, the RF module 207, the UI module 209, and the memory tag117. For example, although other modules may perform the actual task,the control logic module 201 may determine when and how those tasks areperformed or otherwise direct the other modules to perform the tasks.

The processing module 203, may perform one or more processes associatedwith one or more signals, wherein the signals may be sampled, digitized,and/or processed in one or more methods so that the PC module 116 mayfurther utilize the processed signals. In one embodiment, the processingmodule 203 may utilize one or more algorithms for transforming thesignals to one or more digital signals, digital arrays, digitalpatterns, and the like. The comparison module 205 may compare the one ormore processed signals to determine one or more characteristicsassociated with the signals. For example, the comparison module 205 maycompare phase, amplitude, signal to noise (S/N) ratio, and othercharacteristics of each signal to one another. In one embodiment, thecomparison module 205 may perform the comparison via one or more digitaland/or analog components. In one embodiment the comparison module 205may perform the comparisons on signals received via the processingmodule 203 and/or via the RF module 207.

In one embodiment, the RF module 207 may generate and/or receive one ormore signals for effectuating one or more communication links/sessionswith one or more other devices. In one embodiment, the RF module 207 maypresent one or more signals to the processing module 203 and/or to thecomparison module 205 in an analog format for processing and/orcomparison, wherein the processing module 203 and/or the comparisonmodule 205 may do the processing and/or the comparison via analogcircuitry and components. In one embodiment, the RF module 207 mayinclude various circuitry and components or receiving and transmittingRF signals, wherein the signals may include data, power, control, and/orreference signals. In various embodiments, the RF module 207 includesand/or interfaces with a plurality of antennas for the receiving andtransmitting of the RF signals.

The user interface (UI) module 209 may provide one or more mechanismsfor presenting one or more information items (e.g., messages,indicators, location directions, etc.) to a user and/or receive input(e.g., selection) from the user. In various embodiments, the UI module209 may receive the one or more information items from the processingmodule 203, the comparison module 205, the RF module 207, and the likefor presentation to the user. In one embodiment, the UI module 209 mayreceive an input from the user, another module, and/or a serviceprovider for selecting one or more actions for proceeding, continuing,stopping, denying, and the like process steps.

FIGS. 3A-3C illustrate various diagrams and schematics of processes anddevice interactions in the system 100, according to various embodiments.

FIG. 3A depicts diagram 300 including a memory tag 301 which includestwo antennas 303 and 305, wherein there may be a plurality of antennaswhich may be placed at different physical locations on the memory tag(e.g., at two different ends of a bank card). Further, the memory tag301 may be receiving RF communication signals from a device 307 (e.g.,UE 101 a, a POS, etc.) wherein the signals 309 and 311 are received atvia, at least, the two antennas 303 and 305, but not in that particularmatching order. In one embodiment, the received signals from the twoantennas are processed/analyzed to determine one or more characteristicsassociated with the two signals. For example, amplitude, phase, power,etc. may be measured and recorded. In use case scenario, a second device313 (e.g., UE 101 b) may also request to communicate with and access thememory tag 301 via the RF communication signals 315 and 317, which arereceived, at least, via the antennas 303 and 305. It is noted that theremay a plurality of antennas placed at different locations on the memorytag 301 and/or at a UE 101. In one embodiment, the signals 315 and 317may be processed/analyzed by the memory tag 301 and/or by a UE 101associated with the memory tag 301. In one example, the device 313 is ata farther location than the device 307, whereby determination andanalysis of the characteristics associated with of the signals 315 and317 indicate that the characteristics are similar, for example, similarphase, amplitude, power, and the like. In one embodiment, one or morecircuitries on the memory tag 301 may disable any communication linkswith the device 313 as it may be determined that the device is outsideof a suggested/suitable proximity communication range, wherein thedevice 313 may be attempting to “pretend” to be at a closer locationthat it may actually be. For example, the device 313 may attempt tofraudulently hijack a communication link and access information at thememory tag 301.

FIG. 3B depicts a flowchart 350 which may be implemented on a device(e.g., a memory tag, a mobile phone, etc.) which includes antennas 351and 353 for receiving RF communication signals for proximity-basedinteractions among a plurality of devices. Signal “A” received at atarget device via the antenna 351 is processed and analyzed, wherein at355 one or more characteristics associated with the signal “A” aredetermined, which may include a signal phase, a amplitude, power, etc.Further, signal “B” received via the antenna 353 is processed andanalyzed at 357 for determining one or more characteristics associatedwith the signal “B.” Further, at 359 one or more processors and/orcircuitries calculate/determine one or more differences between the oneor more characteristics of the two signals “A” and “B.” Furthermore, at361, one or more processors and/or circuitries (e.g., analogcomparators) may compare the calculated/determined differences from step359 against one or more set criteria, threshold values, and/or ranges ofvalues, wherein if the calculated/determined differences meet thecriteria then the interaction may continue and/or may be allowed and/orcontinued at 363. However, if the calculated/determined differences donot meet the set criteria, then at 365 an alert/warning may be issued sothat the user may take one or more actions (e.g., move the targetdevice, the memory tag, etc.) to address any potential issues. In oneembodiment, if there are no mechanisms available for a complete UI(e.g., display, input, etc.), for example on a memory tag (e.g., a bankcard), then one or more suitable/available alerts may be presented tothe user. For example, a memory tag may include a miniature vibratingcomponent, analog resonating components (e.g., for audio), and/or otherhaptic/visual alerts (e.g., light strip).

FIG. 3C shows diagram 370 including device 371 and device 373, wherein auser wishes to utilize, for example, device 371 to locate/track device373 or vice versa. In one embodiment, device 371 may broadcast one ormore signals (e.g., beacons, SMS, etc.) via 375, wherein the device 373may respond via one or more signals 377. In one embodiment, the device371 may utilize one or more antennas to determine and analyze one ormore characteristics associated with the signals 377 and presentdirectional information to the user of device 371 for locating/trackingthe device 373. For example, as the user moves with the device 371, atleast one of the one or more characteristics of the signals 377 willchange, whereby location information of the device 373 may beascertained. In one embodiment, the device 371 may determine powerlevels in the one or more signals received from the device 373 and maymake adjustments in its transmission power. For example, if the device371 is measuring a low power in a signal received from the device 373(e.g., device 373 may be farther away, there may be obstacles betweenthe devices, etc.), then the device 371 may increase its owntransmission power level to assure that the device 373 can receivesignals transmitted from the device 371. In one example, the device 371may decrease its transmission power level if the distance to the device373 is determined to be closer than a previous location point. In oneembodiment, the device 371 may include a request, in signals transmittedto the device 373, for the device 373 to increase/decrease itstransmission power level.

FIG. 4 is a flowchart of a process for, at least, determining a requestfor interaction among devices, according to an embodiment. In variousembodiments, the PC module 116 and/or the memory tag 117 may perform theprocess 400 and may be implemented in, for instance, a chip setincluding a processor and a memory as shown in FIG. 8. As such, the PCmodule 116 and/or the memory tag 117 can provide means for accomplishingvarious parts of the process 400 as well as means for accomplishingother processes in conjunction with other components of the system 100.Throughout this process, the memory tag 117 is referred to as completingvarious portions of the process 400, however, it is understood thatother components of the system 100 can perform some of and/or all of theprocess steps. Further, in various embodiments, the PC module 116 and/orthe memory tag 117 may be implemented in one or more entities of thesystem 100.

In step 401, the PC module 116 determines a request for interactionbetween at least one first device and at least one second device,wherein at least the at least one first device is associated with atleast one first antenna and at least one second antenna. In oneembodiment, the at least one first device may be a wireless memory tagwhich may be embedded into a device, for example a mobile phone, whereinthe memory tag and/or the device may include a plurality of antennas forreceiving/transmitting various RF signals. In one embodiment, the atleast one second device may be user device (e.g., a mobile phone, an NFCreader, a network device (e.g., a computer, a kiosk, etc.), an activedevice (e.g., including power, processor, etc.), a passive device (e.g.,a memory card, a memory tag, etc.) In one embodiment, the memory tag maybe embedded into a user item; for example a bank card, an ID card, apassport, a wallet, and the like, wherein the memory tag include theplurality of antennas. In one embodiment, the request for interactionmay be a request for access to read, write, modify, transfer, inquire,or a combination thereof. In one embodiment, the interaction includes acommunication via an NFC protocol. In one embodiment, the at least onefirst device, the at least one second device, or a combination thereofis and/or may be associated with a wireless memory tag, a universallocal storage, a passive device, an active device, or a combinationthereof.

In step 403, the PC module 116 determines a first signal received by theat least one first antenna and a second signal received by the at leastone second antenna. In one embodiment, a memory tag and/or a device(e.g., a tablet) may receive a plurality of signals from one or moreother devices and/or memory tags. For example, a memory tag may receivea plurality of signals via a plurality of its antennas. In one example,a device (e.g., a mobile phone) may detect a plurality of signalsassociated with a proximity-based communication device (e.g., a memorytag, another device, etc.) In one embodiment, the first signal and thesecond signal include one or more data signals, one or more powersignals, one or more reference signals, or a combination thereof.

In step 405, the PC module 116 determines one or more differences in oneor more characteristics of the first signal and the second signal. Inone embodiment, a device may utilize one or more processors, algorithms,circuitries, components, digital and/or analog, and the like to processthe plurality of signals for determining one or more characteristics,one or more parameters, one or more properties, and the like associatedwith the signals. In one embodiment, the one or more characteristicsinclude, at least in part, one or more a signal phases, signalamplitudes, powers, S/N ratios, and the like. In one embodiment, amemory tag may utilize one or more circuitries including a plurality ofcomponents (e.g., analog) to determine the characteristics. In variousembodiments, the device and/or memory tag may determine one or moredifferences in the one or more characteristics associated with eachsignal. For example, a first signal may have a different phase,amplitude, power, etc. when compared to the characteristics of a secondsignal, a third signal, etc.

In step 407, the PC module 116 processes and/or facilitates a processingof the one or more differences to determine whether to allow theinteraction. In one embodiment, a device and/or a memory tag may allowan interaction requested by another device and/or memory tag. Forexample, a second device and/or memory tag may be requesting to access(e.g., read/write/modify) certain data at a first device and/or memorytag. For example, a memory tag may disable one or more components in oneor more circuitries to disallow an interaction. In one embodiment, adevice may utilize one or more processors and/or applications to denythe interaction.

FIG. 5 is a flowchart of a process for, at least, comparing one or moredifferences to one or more threshold values, according to variousembodiments. In various embodiments, the PC module 116 and/or the memorytag 117 may perform the process 500 and may be implemented in, forinstance, a chip set including a processor and a memory as shown in FIG.8. As such, the PC module 116 and/or the memory tag 117 can providemeans for accomplishing various parts of the process 500 as well asmeans for accomplishing other processes in conjunction with othercomponents of the system 100. Throughout this process, the memory tag117 is referred to as completing various portions of the process 500,however, it is understood that other components of the system 100 canperform some of and/or all of the process steps. Further, in variousembodiments, the PC module 116 and/or the memory tag 117 may beimplemented in one or more entities of the system 100.

In step 501, the PC module 116 causes, at least in part, one or morecomparisons of the one or more differences to one or more thresholdvalues. In one embodiment, the one or more determined differences may becompared to one or more threshold values to determine proximity (e.g.,location) of a source associated with one or more certain signals. Forexample, it may be determined that signals from a second device and/or asecond memory tag, which are assumed to be located at a certain distancefrom a first device and/or a first memory tag, should have certaincharacteristics associated with the signals. For example, two signalsreceived from a second device (e.g., a source device) located at a closerange of two-to-three centimeters away from a first device (e.g., atarget device) should have a phase and/or amplitude difference greaterthan a certain threshold value, wherein if the differences are less thanthe certain threshold value, it may be indicative that the source of thesignals (e.g., the source device) is not necessarily located within thatclose distance.

In step 503, the PC module 116 causes, at least in part, adiscontinuation of the interaction based, at least in part, on the oneor more comparisons. In one embodiment, a device and/or a memory tag mayallow an interaction requested by another user device and/or memory tagand later the allowed interaction and/or a communication link may bedisabled if the one or more comparisons indicate one or more parameterand/or characteristic values outside a threshold value range. Forexample, a second device and/or memory tag may be accessing (e.g.,read/write) certain data at a first device and/or memory tag. In oneexample, a memory tag may disable one or more components in its one ormore circuitries to discontinue a communication link and disengage froman interaction.

In step 505, PC module 116 causes, at least in part, a presentation of aUI comprising one or more indicators, one or more messages, or acombination thereof for providing instructing information, statusinformation, or a combination thereof on the interaction. In oneembodiment, a UI may present a warning that a request for an interactionand/or a communication link is potentially fraudulent, or is suspicious,or is from a remote source device, and the like. In one embodiment, auser of a target device may be prompted to take certain actions, forexample, to move the target device so that different set of signals maybe captured and new characteristics may be determined.

In step 507, the PC module 116 causes, at least in part, an estimationof a distance between the at least one first device and the at least onesecond device based, at least in part, on the one or more differences.In one embodiment, a device may utilize various processors, algorithms,circuitries, and the like to analyze one or more parameters of the oneor more differences so that a distance between at least a first deviceand a second device may be determined. For example, differences inamplitude, in power, in phase, etc. may be indicative of the distance.

In step 509, the PC module 116 determines whether to allow theinteraction based, at least in part, on the distance. For example, if asource device is supposed to be within three centimeters of a user'starget device and the estimated distance is calculated/determined to begreater than the supposed three centimeters, then a request from thesource device to interact with the user's target device may be denied.

In step 511, PC module 116 causes, at least in part, a presentation of auser interface comprising one or more indicators, one or more messages,or a combination thereof for providing directional information for, atleast, locating the at least one first device, the at least one seconddevice, or a combination thereof. In one embodiment, a first device mayutilize one or more other components; for example, a gyroscope, anaccelerometer, a compass, and the like, as well as the determined signalcharacteristics and/or differences associated with signals from a seconddevice, to further determine and present directional information forlocating/tracking the second device. For example, a user utilizes afirst device to determine location information of a second device anddirectional information to the other device. In one embodiment, the atleast one first device, the at least one second device, or a combinationthereof may utilize the one or more indicators and/or the one or moremessages for interacting with one or more other devices to perform oneor more tasks associated with one or more gaming applications, one ormore entertainment applications, one or more educational applications,and the like. For example, one or more users may try to locate variousobjects including memory tags placed within certain proximity of auser's location. In one example, a user may utilize the presentedindicators for improving one or more users' abilities to followdirectional information.

FIGS. 6A and 6B are example UI diagrams utilized in the processes ofFIGS. 4 and 5, according to various embodiments. As shown, the exampleUIs of FIGS. 6A and 6B include UIs 601 and 631 including elements and/orfunctionalities created and/or modified based, at least in part, oninformation, data, and/or signals resulting from the processes (e.g.,processes 400 and/or 500.) Referring to FIG. 6A, UI 601 of a deviceindicates that one or more nearby devices capable of proximitycommunication (e.g., NFC) have been found. In one embodiment, based onone or more analysis from device 601, the UI 601 may present an alert603 indicative of potential issues (e.g., security issues) associatedwith one or more proximity communication requests/attempts. In oneembodiment, the user may be presented with one or more options, forexample, 605 and 607 whereby the user may select to deny/stop any accessat 605, or at 607 the user may choose to move the device 601, wherebythe device may re-analyze the communication signals.

In FIG. 6B, the UI 631 presents to user of device 631 informationassociated with one or more other nearby devices capable of proximitycommunications. In one embodiment, the UI 631 may present directionalinformation 633 for locating the one or more other nearby devices,wherein the information may be based on one or more communication signalcharacteristics processed and analyzed by the device 631. In oneexample, a user may choose from a range of options to, for example,find/track the device via 635, find/track one or more other devices via637, and the like. In various embodiments, as the user and the device631 move, the presented information 633 and available options may beupdated to reflect change in respective location information.

The processes described herein for providing security mechanism forproximity-based interactions among devices may be advantageouslyimplemented via software, hardware, firmware, or a combination ofsoftware and/or firmware and/or hardware. For example, the processesdescribed herein, may be advantageously implemented via processor(s),Digital Signal Processing (DSP) chip, an Application Specific IntegratedCircuit (ASIC), Field Programmable Gate Arrays (FPGAs), etc. Suchexemplary hardware for performing the described functions is detailedbelow.

FIG. 7 illustrates a computer system 700 upon which an embodiment of theinvention may be implemented. Although computer system 700 is depictedwith respect to a particular device or equipment, it is contemplatedthat other devices or equipment (e.g., network elements, servers, etc.)within FIG. 7 can deploy the illustrated hardware and components ofsystem 700. Computer system 700 is programmed (e.g., via computerprogram code or instructions) to provide security mechanism forproximity-based interactions among devices as described herein andincludes a communication mechanism such as a bus 710 for passinginformation between other internal and external components of thecomputer system 700. Information (also called data) is represented as aphysical expression of a measurable phenomenon, typically electricvoltages, but including, in other embodiments, such phenomena asmagnetic, electromagnetic, pressure, chemical, biological, molecular,atomic, sub-atomic and quantum interactions. For example, north andsouth magnetic fields, or a zero and non-zero electric voltage,represent two states (0, 1) of a binary digit (bit). Other phenomena canrepresent digits of a higher base. A superposition of multiplesimultaneous quantum states before measurement represents a quantum bit(qubit). A sequence of one or more digits constitutes digital data thatis used to represent a number or code for a character. In someembodiments, information called analog data is represented by a nearcontinuum of measurable values within a particular range. Computersystem 700, or a portion thereof, constitutes a means for performing oneor more steps of providing security mechanism for proximity-basedinteractions among devices.

A bus 710 includes one or more parallel conductors of information sothat information is transferred quickly among devices coupled to the bus710. One or more processors 702 for processing information are coupledwith the bus 710.

A processor (or multiple processors) 702 performs a set of operations oninformation as specified by computer program code related to providingsecurity mechanism for proximity-based interactions among devices. Thecomputer program code is a set of instructions or statements providinginstructions for the operation of the processor and/or the computersystem to perform specified functions. The code, for example, may bewritten in a computer programming language that is compiled into anative instruction set of the processor. The code may also be writtendirectly using the native instruction set (e.g., machine language). Theset of operations include bringing information in from the bus 710 andplacing information on the bus 710. The set of operations also typicallyinclude comparing two or more units of information, shifting positionsof units of information, and combining two or more units of information,such as by addition or multiplication or logical operations like OR,exclusive OR (XOR), and AND. Each operation of the set of operationsthat can be performed by the processor is represented to the processorby information called instructions, such as an operation code of one ormore digits. A sequence of operations to be executed by the processor702, such as a sequence of operation codes, constitute processorinstructions, also called computer system instructions or, simply,computer instructions. Processors may be implemented as mechanical,electrical, magnetic, optical, chemical or quantum components, amongothers, alone or in combination.

Computer system 700 also includes a memory 704 coupled to bus 710. Thememory 704, such as a random access memory (RAM) or any other dynamicstorage device, stores information including processor instructions forproviding security mechanism for proximity-based interactions amongdevices. Dynamic memory allows information stored therein to be changedby the computer system 700. RAM allows a unit of information stored at alocation called a memory address to be stored and retrievedindependently of information at neighboring addresses. The memory 704 isalso used by the processor 702 to store temporary values duringexecution of processor instructions. The computer system 700 alsoincludes a read only memory (ROM) 706 or any other static storage devicecoupled to the bus 710 for storing static information, includinginstructions, that is not changed by the computer system 700. Somememory is composed of volatile storage that loses the information storedthereon when power is lost. Also coupled to bus 710 is a non-volatile(persistent) storage device 708, such as a magnetic disk, optical diskor flash card, for storing information, including instructions, thatpersists even when the computer system 700 is turned off or otherwiseloses power.

Information, including instructions for providing security mechanism forproximity-based interactions among devices, is provided to the bus 710for use by the processor from an external input device 712, such as akeyboard containing alphanumeric keys operated by a human user, or asensor. A sensor detects conditions in its vicinity and transforms thosedetections into physical expression compatible with the measurablephenomenon used to represent information in computer system 700. Otherexternal devices coupled to bus 710, used primarily for interacting withhumans, include a display device 714, such as a cathode ray tube (CRT),a liquid crystal display (LCD), a light emitting diode (LED) display, anorganic LED (OLED) display, a plasma screen, or a printer for presentingtext or images, and a pointing device 716, such as a mouse, a trackball,cursor direction keys, or a motion sensor, for controlling a position ofa small cursor image presented on the display 714 and issuing commandsassociated with graphical elements presented on the display 714. In someembodiments, for example, in embodiments in which the computer system700 performs all functions automatically without human input, one ormore of external input device 712, display device 714, and pointingdevice 716 is omitted.

In the illustrated embodiment, special purpose hardware, such as anapplication specific integrated circuit (ASIC) 720, is coupled to bus710. The special purpose hardware is configured to perform operationsnot performed by processor 702 quickly enough for special purposes.Examples of ASICs include graphics accelerator cards for generatingimages for display 714, cryptographic boards for encrypting anddecrypting messages sent over a network, speech recognition, andinterfaces to special external devices, such as robotic arms and medicalscanning equipment that repeatedly perform some complex sequence ofoperations that are more efficiently implemented in hardware.

Computer system 700 also includes one or more instances of acommunications interface 770 coupled to bus 710. Communication interface770 provides a one-way or two-way communication coupling to a variety ofexternal devices that operate with their own processors, such asprinters, scanners, and external disks. In general the coupling is witha network link 778 that is connected to a local network 780 to which avariety of external devices with their own processors are connected. Forexample, communication interface 770 may be a parallel port or a serialport or a universal serial bus (USB) port on a personal computer. Insome embodiments, communications interface 770 is an integrated servicesdigital network (ISDN) card or a digital subscriber line (DSL) card or atelephone modem that provides an information communication connection toa corresponding type of telephone line. In some embodiments, acommunication interface 770 is a cable modem that converts signals onbus 710 into signals for a communication connection over a coaxial cableor into optical signals for a communication connection over a fiberoptic cable. As another example, communications interface 770 may be alocal area network (LAN) card to provide a data communication connectionto a compatible LAN, such as Ethernet. Wireless links may also beimplemented. For wireless links, the communications interface 770 sendsor receives or both sends and receives electrical, acoustic, orelectromagnetic signals, including infrared and optical signals thatcarry information streams, such as digital data. For example, inwireless handheld devices, such as mobile telephones like cell phones,the communications interface 770 includes a radio band electromagnetictransmitter and receiver called a radio transceiver. In certainembodiments, the communications interface 770 enables connection to thecommunication network 113 for providing security mechanism forproximity-based interactions among devices.

The term “computer-readable medium” as used herein refers to any mediumthat participates in providing information to processor 702, includinginstructions for execution. Such a medium may take many forms,including, but not limited to computer-readable storage medium (e.g.,non-volatile media, volatile media), and transmission media.Non-transitory media, such as non-volatile media, include, for example,optical or magnetic disks, such as storage device 708. Volatile mediainclude, for example, dynamic memory 704.

Transmission media include, for example, twisted pair cables, coaxialcables, copper wire, fiber optic cables, and carrier waves that travelthrough space without wires or cables, such as acoustic waves andelectromagnetic waves, including radio, optical and infrared waves.Signals include man-made transient variations in amplitude, frequency,phase, polarization, or other physical properties transmitted throughthe transmission media. Common foams of computer-readable media include,for example, a floppy disk, a flexible disk, hard disk, magnetic tape,any other magnetic medium, a CD-ROM, CDRW, DVD, any other opticalmedium, punch cards, paper tape, optical mark sheets, any other physicalmedium with patterns of holes or other optically recognizable indicia, aRAM, a PROM, an EPROM, a FLASH-EPROM, an EEPROM, a flash memory, anyother memory chip or cartridge, a carrier wave, or any other medium fromwhich a computer can read. The term computer-readable storage medium isused herein to refer to any computer-readable medium except transmissionmedia.

Logic encoded in one or more tangible media includes one or both ofprocessor instructions on a computer-readable storage media and specialpurpose hardware, such as ASIC 720.

Network link 778 typically provides information communication usingtransmission media through one or more networks to other devices thatuse or process the information. For example, network link 778 mayprovide a connection through local network 780 to a host computer 782 orto equipment 784 operated by an Internet Service Provider (ISP). ISPequipment 784 in turn provides data communication services through thepublic, world-wide packet-switching communication network of networksnow commonly referred to as the Internet 790.

A computer called a server host 792 connected to the Internet hosts aprocess that provides a service in response to information received overthe Internet. For example, server host 792 hosts a process that providesinformation representing video data for presentation at display 714. Itis contemplated that the components of system 700 can be deployed invarious configurations within other computer systems, e.g., host 782 andserver 792.

At least some embodiments of the invention are related to the use ofcomputer system 700 for implementing some or all of the techniquesdescribed herein. According to one embodiment of the invention, thosetechniques are performed by computer system 700 in response to processor702 executing one or more sequences of one or more processorinstructions contained in memory 704. Such instructions, also calledcomputer instructions, software and program code, may be read intomemory 704 from another computer-readable medium such as storage device708 or network link 778. Execution of the sequences of instructionscontained in memory 704 causes processor 702 to perform one or more ofthe method steps described herein. In alternative embodiments, hardware,such as ASIC 720, may be used in place of or in combination withsoftware to implement the invention. Thus, embodiments of the inventionare not limited to any specific combination of hardware and software,unless otherwise explicitly stated herein.

The signals transmitted over network link 778 and other networks throughcommunications interface 770, carry information to and from computersystem 700. Computer system 700 can send and receive information,including program code, through the networks 780, 790 among others,through network link 778 and communications interface 770. In an exampleusing the Internet 790, a server host 792 transmits program code for aparticular application, requested by a message sent from computer 700,through Internet 790, ISP equipment 784, local network 780, andcommunications interface 770. The received code may be executed byprocessor 702 as it is received, or may be stored in memory 704 or instorage device 708 or any other non-volatile storage for laterexecution, or both. In this manner, computer system 700 may obtainapplication program code in the form of signals on a carrier wave.

Various forms of computer readable media may be involved in carrying oneor more sequence of instructions or data or both to processor 702 forexecution. For example, instructions and data may initially be carriedon a magnetic disk of a remote computer such as host 782. The remotecomputer loads the instructions and data into its dynamic memory andsends the instructions and data over a telephone line using a modem. Amodem local to the computer system 700 receives the instructions anddata on a telephone line and uses an infra-red transmitter to convertthe instructions and data to a signal on an infra-red carrier waveserving as the network link 778. An infrared detector serving ascommunications interface 770 receives the instructions and data carriedin the infrared signal and places information representing theinstructions and data onto bus 710. Bus 710 carries the information tomemory 704 from which processor 702 retrieves and executes theinstructions using some of the data sent with the instructions. Theinstructions and data received in memory 704 may optionally be stored onstorage device 708, either before or after execution by the processor702.

FIG. 8 illustrates a chip set or chip 800 upon which an embodiment ofthe invention may be implemented. Chip set 800 is programmed forproviding security mechanism for proximity-based interactions amongdevices as described herein and includes, for instance, the processorand memory components described with respect to FIG. 7 incorporated inone or more physical packages (e.g., chips). By way of example, aphysical package includes an arrangement of one or more materials,components, and/or wires on a structural assembly (e.g., a baseboard) toprovide one or more characteristics such as physical strength,conservation of size, and/or limitation of electrical interaction. It iscontemplated that in certain embodiments the chip set 800 can beimplemented in a single chip. It is further contemplated that in certainembodiments the chip set or chip 800 can be implemented as a single“system on a chip.” It is further contemplated that in certainembodiments a separate ASIC would not be used, for example, and that allrelevant functions as disclosed herein would be performed by a processoror processors. Chip set or chip 800, or a portion thereof, constitutes ameans for performing one or more steps of providing user interfacenavigation information associated with the availability of functions.Chip set or chip 800, or a portion thereof, constitutes a means forperforming one or more steps of providing security mechanism forproximity-based interactions among devices.

In one embodiment, the chip set or chip 800 includes a communicationmechanism such as a bus 801 for passing information among the componentsof the chip set 800. A processor 803 has connectivity to the bus 801 toexecute instructions and process information stored in, for example, amemory 805. The processor 803 may include one or more processing coreswith each core configured to perform independently. A multi-coreprocessor enables multiprocessing within a single physical package.Examples of a multi-core processor include two, four, eight, or greaternumbers of processing cores. Alternatively or in addition, the processor803 may include one or more microprocessors configured in tandem via thebus 801 to enable independent execution of instructions, pipelining, andmultithreading. The processor 803 may also be accompanied with one ormore specialized components to perform certain processing functions andtasks such as one or more digital signal processors (DSP) 807, or one ormore application-specific integrated circuits (ASIC) 809. A DSP 807typically is configured to process real-world signals (e.g., sound) inreal time independently of the processor 803. Similarly, an ASIC 809 canbe configured to performed specialized functions not easily performed bya more general purpose processor. Other specialized components to aid inperforming the inventive functions described herein may include one ormore field programmable gate arrays (FPGA), one or more controllers, orone or more other special-purpose computer chips.

In one embodiment, the chip set or chip 800 includes merely one or moreprocessors and some software and/or firmware supporting and/or relatingto and/or for the one or more processors.

The processor 803 and accompanying components have connectivity to thememory 805 via the bus 801. The memory 805 includes both dynamic memory(e.g., RAM, magnetic disk, writable optical disk, etc.) and staticmemory (e.g., ROM, CD-ROM, etc.) for storing executable instructionsthat when executed perform the inventive steps described herein toprovide security mechanism for proximity-based interactions amongdevices. The memory 805 also stores the data associated with orgenerated by the execution of the inventive steps.

FIG. 9 is a diagram of a mobile terminal (e.g., handset) that can beused to implement an embodiment of the invention. In some embodiments,mobile terminal 901, or a portion thereof, constitutes a means forperforming one or more steps of providing security mechanism forproximity-based interactions among devices. Generally, a radio receiveris often defined in terms of front-end and back-end characteristics. Thefront-end of the receiver encompasses all of the Radio Frequency (RF)circuitry whereas the back-end encompasses all of the base-bandprocessing circuitry. As used in this application, the term “circuitry”refers to both: (1) hardware-only implementations (such asimplementations in only analog and/or digital circuitry), and (2) tocombinations of circuitry and software (and/or firmware) (such as, ifapplicable to the particular context, to a combination of processor(s),including digital signal processor(s), software, and memory(ies) thatwork together to cause an apparatus, such as a mobile phone or server,to perform various functions). This definition of “circuitry” applies toall uses of this term in this application, including in any claims. As afurther example, as used in this application and if applicable to theparticular context, the term “circuitry” would also cover animplementation of merely a processor (or multiple processors) and its(or their) accompanying software/or firmware. The term “circuitry” wouldalso cover if applicable to the particular context, for example, abaseband integrated circuit or applications processor integrated circuitin a mobile phone or a similar integrated circuit in a cellular networkdevice or other network devices.

Pertinent internal components of the telephone include a Main ControlUnit (MCU) 903, a Digital Signal Processor (DSP) 905, and areceiver/transmitter unit including a microphone gain control unit and aspeaker gain control unit. A main display unit 907 provides a display tothe user in support of various applications and mobile terminalfunctions that perform or support the steps of providing securitymechanism for proximity-based interactions among devices. The display907 includes display circuitry configured to display at least a portionof a user interface of the mobile terminal (e.g., mobile telephone).Additionally, the display 907 and display circuitry are configured tofacilitate user control of at least some functions of the mobileterminal. An audio function circuitry 909 includes a microphone 911 andmicrophone amplifier that amplifies the speech signal output from themicrophone 911. The amplified speech signal output from the microphone911 is fed to a coder/decoder (CODEC) 913.

A radio section 915 amplifies power and converts frequency in order tocommunicate with a base station, which is included in a mobilecommunication system, via antenna 917. The power amplifier (PA) 919 andthe transmitter/modulation circuitry are operationally responsive to theMCU 903, with an output from the PA 919 coupled to the duplexer 921 orcirculator or antenna switch, as known in the art. The PA 919 alsocouples to a battery interface and power control unit 920.

In use, a user of mobile terminal 901 speaks into the microphone 911 andhis or her voice along with any detected background noise is convertedinto an analog voltage. The analog voltage is then converted into adigital signal through the Analog to Digital Converter (ADC) 923. Thecontrol unit 903 routes the digital signal into the DSP 905 forprocessing therein, such as speech encoding, channel encoding,encrypting, and interleaving. In one embodiment, the processed voicesignals are encoded, by units not separately shown, using a cellulartransmission protocol such as enhanced data rates for global evolution(EDGE), general packet radio service (GPRS), global system for mobilecommunications (GSM), Internet protocol multimedia subsystem (IMS),universal mobile telecommunications system (UMTS), etc., as well as anyother suitable wireless medium, e.g., microwave access (WiMAX), LongTerm Evolution (LTE) networks, code division multiple access (CDMA),wideband code division multiple access (WCDMA), wireless fidelity(WiFi), satellite, and the like, or any combination thereof.

The encoded signals are then routed to an equalizer 925 for compensationof any frequency-dependent impairments that occur during transmissionthough the air such as phase and amplitude distortion. After equalizingthe bit stream, the modulator 927 combines the signal with a RF signalgenerated in the RF interface 929. The modulator 927 generates a sinewave by way of frequency or phase modulation. In order to prepare thesignal for transmission, an up-converter 931 combines the sine waveoutput from the modulator 927 with another sine wave generated by asynthesizer 933 to achieve the desired frequency of transmission. Thesignal is then sent through a PA 919 to increase the signal to anappropriate power level. In practical systems, the PA 919 acts as avariable gain amplifier whose gain is controlled by the DSP 905 frominformation received from a network base station. The signal is thenfiltered within the duplexer 921 and optionally sent to an antennacoupler 935 to match impedances to provide maximum power transfer.Finally, the signal is transmitted via antenna 917 to a local basestation. An automatic gain control (AGC) can be supplied to control thegain of the final stages of the receiver. The signals may be forwardedfrom there to a remote telephone which may be another cellulartelephone, any other mobile phone or a land-line connected to a PublicSwitched Telephone Network (PSTN), or other telephony networks.

Voice signals transmitted to the mobile terminal 901 are received viaantenna 917 and immediately amplified by a low noise amplifier (LNA)937. A down-converter 939 lowers the carrier frequency while thedemodulator 941 strips away the RF leaving only a digital bit stream.The signal then goes through the equalizer 925 and is processed by theDSP 905. A Digital to Analog Converter (DAC) 943 converts the signal andthe resulting output is transmitted to the user through the speaker 945,all under control of a Main Control Unit (MCU) 903 which can beimplemented as a Central Processing Unit (CPU).

The MCU 903 receives various signals including input signals from thekeyboard 947. The keyboard 947 and/or the MCU 903 in combination withother user input components (e.g., the microphone 911) comprise a userinterface circuitry for managing user input. The MCU 903 runs a userinterface software to facilitate user control of at least some functionsof the mobile terminal 901 for providing security mechanism forproximity-based interactions among devices. The MCU 903 also delivers adisplay command and a switch command to the display 907 and to thespeech output switching controller, respectively. Further, the MCU 903exchanges information with the DSP 905 and can access an optionallyincorporated SIM card 949 and a memory 951. In addition, the MCU 903executes various control functions required of the terminal. The DSP 905may, depending upon the implementation, perform any of a variety ofconventional digital processing functions on the voice signals.Additionally, DSP 905 determines the background noise level of the localenvironment from the signals detected by microphone 911 and sets thegain of microphone 911 to a level selected to compensate for the naturaltendency of the user of the mobile terminal 901.

The CODEC 913 includes the ADC 923 and DAC 943. The memory 951 storesvarious data including call incoming tone data and is capable of storingother data including music data received via, e.g., the global Internet.The software module could reside in RAM memory, flash memory, registers,or any other form of writable storage medium known in the art. Thememory device 951 may be, but not limited to, a single memory, CD, DVD,ROM, RAM, EEPROM, optical storage, magnetic disk storage, flash memorystorage, or any other non-volatile storage medium capable of storingdigital data.

An optionally incorporated SIM card 949 carries, for instance, importantinformation, such as the cellular phone number, the carrier supplyingservice, subscription details, and security information. The SIM card949 serves primarily to identify the mobile terminal 901 on a radionetwork. The card 949 also contains a memory for storing a personaltelephone number registry, text messages, and user specific mobileterminal settings.

Additionally, sensors module 953 may include various sensors, forinstance, a location sensor, a speed sensor, an audio sensor, an imagesensor, a brightness sensor, a biometrics sensor, various physiologicalsensors, a directional sensor, and the like, for capturing various dataassociated with the mobile terminal 901 (e.g., a mobile phone), a userof the mobile terminal 901, an environment of the mobile terminal 901and/or the user, or a combination thereof, wherein the data may becollected, processed, stored, and/or shared with one or more componentsand/or modules of the mobile terminal 901 and/or with one or moreentities external to the mobile terminal 901.

While the invention has been described in connection with a number ofembodiments and implementations, the invention is not so limited butcovers various obvious modifications and equivalent arrangements, whichfall within the purview of the appended claims. Although features of theinvention are expressed in certain combinations among the claims, it iscontemplated that these features can be arranged in any combination andorder.

1. A method comprising: determining a request for interaction between afirst device and a second device, wherein the first device is associatedwith a first antenna and a second antenna; determining a first signalreceived by the first antenna and a second signal received by the secondantenna; determining one or more differences in one or morecharacteristics of the first signal and the second signal; andprocessing of the one or more differences to determine whether to allowthe interaction.
 2. A method of claim 1, wherein the one or morecharacteristics include, at least in part, one or more signal phases,one or more signal amplitudes, one or more powers, one or more signal tonoise (S/N) ratios, or a combination thereof, and wherein theinteraction between the devices includes one or more of reading,transferring, sending, and writing of data from or to the respectivedevices.
 3. A method of claim 1, wherein the first signal and the secondsignal include one or more data signals, one or more power signals, oneor more reference signals, or a combination thereof, wherein the firstsignal and the second signal are characterized as having one or moredifferences between the first signal and the second signal in the one ormore data signals, the power signals, the reference signals or thecombinations thereof, and wherein the differences are based on one ormore of phase, power, amplitude and signal to noise (S/N) ratio of thefirst signal and second signal.
 4. A method of claim 1, furthercomprising: comparing the one or more differences to one or morethreshold values; and discontinuing the interaction based, at least inpart, on the one or more comparisons.
 5. A method of claim 1, furthercomprising: causing presentation of a user interface comprising one ormore indicators, one or more messages, or a combination thereof forproviding instructing information, status information, or a combinationthereof on the interaction.
 6. A method of claim 1, wherein theinteraction includes a near field communication protocol.
 7. A method ofclaim 1, wherein the first device, the second device, or a combinationthereof is associated with a wireless memory tag, with a universal localstorage, with a passive device, with an active device, or a combinationthereof.
 8. A method of claim 1, further comprising: estimating adistance between the first device and the second device based, at leastin part, on the one or more differences; and determining whether toallow the interaction based, at least in part, on the distance.
 9. Amethod of claim 8, further comprising: causing presentation of a userinterface comprising one or more indicators, one or more messages, or acombination thereof for providing directional information for, at least,locating the first device, the second device, or a combination thereof.10. A method of claim 9, wherein the first device, the second device, ora combination thereof utilize the one or more indicators, the one ormore messages, or a combination thereof for interacting with one or moreother devices to perform one or more tasks associated with one or moregaming applications, one or more entertainment applications, one or moreeducational applications, or a combination thereof.
 11. An apparatuscomprising at least one processor and at least one memory includingcomputer program code for one or more programs, the at least one memoryand the computer program code configured to, with the at least oneprocessor, cause the apparatus to perform at least the following:determine a request for interaction between a first device and a seconddevice, wherein the first device is associated with a first antenna anda second antenna; determine a first signal received by the first antennaand a second signal received by the second antenna; determine one ormore differences in one or more characteristics of the first signal andthe second signal; and process or facilitate a processing of the one ormore differences to determine whether to allow the interaction.
 12. Anapparatus of claim 11, wherein the one or more characteristics include,at least in part, one or more signal phases, one or more signalamplitudes, one or more powers, one or more signal to noise (S/N)ratios, or a combination thereof, and wherein the interaction betweenthe devices includes one or more of reading, transferring, sending, andwriting of data from and/or to the respective devices.
 13. An apparatusof claim 11, wherein the first signal and the second signal include oneor more data signals, one or more power signals, one or more referencesignals, or a combination thereof, wherein the first signal and thesecond signal are characterized as having one or more differencesbetween the first signal and the second signal in the one or more datasignals, the power signals, the reference signals or the combinationsthereof, and wherein the differences are based on one or more of phase,power, amplitude and signal to noise (S/N) ratio of the first signal andsecond signal.
 14. An apparatus of claim 11, wherein the at least onememory and the computer program code are further configured to, with theat least one processor, cause the apparatus to: cause, at least in part,one or more comparisons of the one or more differences to one or morethreshold values; and cause, at least in part, a discontinuation of theinteraction based, at least in part, on the one or more comparisons. 15.An apparatus of claim 11, wherein the at least one memory and thecomputer program code are further configured to, with the at least oneprocessor, cause the apparatus to: cause, at least in part, apresentation of a user interface comprising one or more indicators, oneor more messages, or a combination thereof for providing instructinginformation, status information, or a combination thereof on theinteraction.
 16. (canceled)
 17. An apparatus of claim 11, wherein thefirst device, the second device, or a combination thereof is associatedwith a wireless memory tag, with a universal local storage, with apassive device, with an active device, or a combination thereof.
 18. Anapparatus of claim 11, wherein the at least one memory and the computerprogram code are further configured to, with the at least one processor,cause the apparatus to: cause, at least in part, an estimation of adistance between the first device and the second device based, at leastin part, on the one or more differences; and determine whether to allowthe interaction based, at least in part, on the distance.
 19. Anapparatus of claim 18, wherein the at least one memory and the computerprogram code are further configured to, with the at least one processor,cause the apparatus to: cause, at least in part, a presentation of auser interface comprising one or more indicators, one or more messages,or a combination thereof for providing directional information for, atleast, locating the first device, the second device, or a combinationthereof.
 20. An apparatus of claim 19, wherein the first device, thesecond device, or a combination thereof utilize the one or moreindicators, the one or more messages, or a combination thereof forinteracting with one or more other devices to perform one or more tasksassociated with one or more gaming applications, one or moreentertainment applications, one or more educational applications, or acombination thereof.
 21. A computer program product comprising anon-transitory computer readable medium and a computer program storedtherein, the computer program comprising computer program codeconfigured to: determine a request for interaction between a firstdevice and a second device, wherein the first device is associated witha first antenna and a second antenna; determine a first signal receivedby the first antenna and a second signal received by the second antenna;determine one or more differences in one or more characteristics of thefirst signal and the second signal; and process or facilitate aprocessing of the one or more differences to determine whether to allowthe interaction.